﻿using System;
using System.Collections.Generic; 
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using ADV_Evaluator;
using ADV_Evaluator.Data;
using ADV_Evaluator.Command;


namespace ADV_Editor.CommandDialog {

    /// <summary>
    /// 「文章の表示」コマンドのダイアログ
    /// </summary>
    partial class MessageDialog : CommandDialogBase {

        /// <summary>
        /// 空の状態からはじめるコンストラクタ
        /// </summary>
        public MessageDialog() {
            InitializeComponent();
        }

        /// <summary>
        /// 文字列を設定した状態ではじめるコンストラクタ
        /// </summary>
        /// <param name="param">属性</param>
        public MessageDialog(MessageParams param) : this() {
            textBox.Text = param.Text;
        }

        /// <summary>
        /// 入力された文章をコマンド化したもの
        /// </summary>
        public override CommandListData Command {
            get {
                MessageParams param;
                param.Text = textBox.Text.Replace("\n", "\n");
                return new CommandListData(CommandName.文章の表示, param); 
            }
        }

        #region ヘルプ
        /// <summary>
        /// OKボタンのヘルプ
        /// </summary>
        protected void button_OK_HelpRequested(object sender, HelpEventArgs hlpevent) {
            ShowPopupHelp(sender, "このダイアログを閉じて、コマンドを追加します。");
        }
        /// <summary>
        /// キャンセルボタンのヘルプ
        /// </summary>
        protected void button_Cancel_HelpRequested(object sender, HelpEventArgs hlpevent) {
            ShowPopupHelp(sender, "変更内容を保存せずにこのダイアログを閉じます。");
        }
        /// <summary>
        /// 文章入力欄のヘルプ
        /// </summary>
        private void textBox_HelpRequested(object sender, HelpEventArgs hlpevent) {
            ShowPopupHelp(sender, "メッセージウィンドウに表示させる文章を入力します。\n#{変数名} と入力すると、その変数の値に置換されます。");
        }
        #endregion


    }
}